With the rapid development of computer technology, distributed system architecture has become a basic option for most large-scale automatic equipment (such as telecommunication equipment, industrial control equipment, etc.). Such distributed architecture generally consists of more than one autonomous computer subsystems/single boards. Different subsystems/boards are connected to each other via a communication channel. Meanwhile, a subsystem/single board itself may be a small-scale distributed subsystem consisting of a number of processors. The whole system is centrally controlled by a master subsystem/single board which is also a unique interface, by which a user manages the system. Each subsystem/single board is also managed by the master control unit/signal board.
A software system architecture typically used by such distributed system is a model based on a process. The process may be distributed in different processors and its location is not required to be paid attention. Messages are transferred between processes in different processors via inter-board communication. The application of such distributed processes needs the inter-board communication to solve the problem of how to send a message of one process to a specified process distributed in a different logical address, that is, how to route the message and how to reliably send the message in a specified link.
In the prior art, a commonly used method is to use the TCP/IP protocol stack to encapsulate messages by sockets for transmission. Advantages of this method are that versatility is strong, technology is mature, and standard protocol stack software provided by a third party can be used. Its disadvantages are that more codes are required to be introduced in the system, which is not suitable for environments where resource restriction is higher, and that the messages are required be encapsulated into IP packets so as not to mount to other custom communication protocols. Another method is to write custom inter-board communication protocols, and it has advantages of fewer codes and simple implementation. However, since there is no available criterion for the writing, this method has poor reusability and is not universal.